import Main from '@/components/main'
import parentView from '@/components/parent-view'

/**
 * iview-admin中meta除了原生参数外可配置的参数:
 * meta: {
 *  title: { String|Number|Function }
 *         显示在侧边栏、面包屑和标签栏的文字
 *         使用'{{ 多语言字段 }}'形式结合多语言使用，例子看多语言的路由配置;
 *         可以传入一个回调函数，参数是当前路由对象，例子看动态路由和带参路由
 *  hideInBread: (false) 设为true后此级路由将不会出现在面包屑中，示例看QQ群路由配置
 *  hideInMenu: (false) 设为true后在左侧菜单不会显示该页面选项
 *  notCache: (false) 设为true后页面在切换标签后不会缓存，如果需要缓存，无需设置这个字段，而且需要设置页面组件name属性和路由配置的name一致
 *  access: (null) 可访问该页面的权限数组，当前路由设置的权限会影响子路由
 *  icon: (-) 该页面在左侧菜单、面包屑和标签导航处显示的图标，如果是自定义图标，需要在图标名称前加下划线'_'
 *  beforeCloseName: (-) 设置该字段，则在关闭当前tab页时会去'@/router/before-close.js'里寻找该字段名对应的方法，作为关闭前的钩子函数
 * }
 */

export default [
  {
    path: '/login',
    name: 'login',
    meta: {
      title: 'Login - 登录',
      hideInMenu: true
    },
    component: () => import('@/view/login/login.vue')
  },
  {
    path: '/',
    name: '_home',
    redirect: '/singleMonthPassenger',
    component: Main,
    meta: {
      hideInMenu: true,
      notCache: true
    },
    children: [
      {
        path: '/home',
        name: 'home',
        meta: {
          hideInMenu: true,
          title: '首页',
          notCache: true,
          icon: 'md-home'
        },
        component: () => import('@/view/charts/singleMonthPassenger')
      }
    ]
  },
  {
    path: '/message',
    name: 'message',
    component: Main,
    meta: {
      hideInBread: true,
      hideInMenu: true
    },
    children: [
      {
        path: 'message_page',
        name: 'message_page',
        meta: {
          icon: 'md-notifications',
          title: '消息中心'
        },
        component: () => import('@/view/single-page/message/index.vue')
      }
    ]
  },

  // 1单月整体的客流波动分析
  {
    path: '/singleMonthPassenger',
    name: '单月整体的客流波动分析',
    meta: {
      title: '单月整体的客流波动分析'
    },
    component: Main,
    children: [
      {
        path: 'singleMonthPassenger',
        name: '单月整体的客流波动分析',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '单月整体的客流波动分析'
        },
        component: () => import('@/view/charts/singleMonthPassenger')
      }
    ]
  },

  // 2工作日和周末的客流分析
  {
    path: '/weekInOutStationPassenger',
    name: '一年中一星期内各天出入站人数',
    meta: {
      title: '一年中一星期内各天出入站人数'
    },
    component: Main,
    children: [
      {
        path: 'weekInOutStationPassenger',
        name: '一年中一星期内各天出入站人数',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '一年中一星期内各天出入站人数'
        },
        component: () => import('@/view/charts/weekInOutStationPassenger')
      }
    ]
  },
  {
    path: '/singleWeekEverydayPassenger',
    name: '单周内出行人数和天气的关系',
    meta: {
      title: '单周内出行人数和天气的关系'
    },
    component: Main,
    children: [
      {
        path: 'singleWeekEverydayPassenger',
        name: '单周内出行人数和天气的关系',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '单周内出行人数和天气的关系'
        },
        component: () => import('@/view/charts/singleWeekEverydayPassenger')
      }
    ]
  },
  // 3单站的点出/入站客流分析
  {
    path: '/singleStationInOutPassenger',
    name: '单月的单个站点的进出人数分析',
    meta: {
      title: '单月的单个站点的进出人数'
    },
    component: Main,
    children: [
      {
        path: 'singleStationInOutPassenger',
        name: '单月的单个站点的进出人数',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '单月的单个站点的进出人数'
        },
        component: () => import('@/view/charts/singleStationInOutPassenger')
      }
    ]
  },
  {
    path: '/singleStationMonthPassenger',
    name: '单个站台月流量走势图',
    meta: {
      title: '6月份20号站台月流量走势图'
    },
    component: Main,
    children: [
      {
        path: 'singleStationMonthPassenger',
        name: '单个站台月流量走势图',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '单个站台月流量走势图'
        },
        component: () => import('@/view/charts/singleStationMonthPassenger')
      }
    ]
  },
  // 4用户年龄结构分析
  {
    path: '/UserAge',
    name: '用户年龄结构分析',
    meta: {
      title: '用户年龄结构分析'
    },
    component: Main,
    children: [
      {
        path: 'UserAge',
        name: '用户年龄结构分析',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '用户年龄结构分析'
        },
        component: () => import('@/view/charts/UserAge')
      }
    ]
  },
  // 5早晚高峰客流站点分布分析
  {
    path: '/morningAndEveningHighPassenger',
    name: '全年各时段客流量分布分析',
    meta: {
      title: '全年各时段客流量分布分析'
    },
    component: Main,
    children: [
      {
        path: 'morningAndEveningHighPassenger',
        name: '全年各时段客流量分布分析',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '全年各时段客流量分布分析'
        },
        component: () => import('@/view/charts/morningAndEveningHighPassenger')
      }
    ]
  },
  // 6站点 OD 客流量分析
  {
    path: '/dayInOutStationPassenger',
    name: '全年各时刻出入站人数统计',
    meta: {
      title: '全年各时刻出入站人数'
    },
    component: Main,
    children: [
      {
        path: 'dayInOutStationPassenger',
        name: '全年各时刻出入站人数统计',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '全年各时刻出入站人数统计'
        },
        component: () => import('@/view/charts/dayInOutStationPassenger')
      }
    ]
  },
  // 7 线路断面（按站点）流量分析
  {
    path: '/dataStationPassenger',
    name: '单个站台各时段流量图',
    meta: {
      title: '单个站台各时段流量图'
    },
    component: Main,
    children: [
      {
        path: 'dataStationPassenger',
        name: '单个站台各时段流量图',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '所有站台各时段流量图'
        },
        component: () => import('@/view/charts/dateStationPassenger')
      }
    ]
  },

  {
    path: '/inOutStationStatistics',
    name: '所有的出入站站点统计',
    meta: {
      title: '所有的出入站站点统计'
    },
    component: Main,
    children: [
      {
        path: 'inOutStationStatistics',
        name: '所有的出入站站点统计',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '所有的出入站站点统计'
        },
        component: () => import('@/view/charts/inOutStationStatistics')
      }
    ]
  },

  // 其他
  {
    path: '/ticketPassenger',
    name: '各票价人数数量和占比',
    meta: {
      title: '票价和人数统计'
    },
    component: Main,
    children: [
      {
        path: 'ticketPassenger',
        name: '票价和人数',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '票价和人数'
        },
        component: () => import('@/view/charts/ticketPassenger')
      }
    ]
  },

  /*  {
    path: '/everyStationInOutPassenger',
    name: '各个出入站点流量统计',
    meta: {
      title: '各个出入站点流量统计'
    },
    component: Main,
    children: [
      {
        path: 'everyStationInOutPassenger',
        name: '各个出入站点流量统计',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '各个出入站点流量统计'
        },
        component: () => import('@/view/charts/everyStationInOutPassenger')
      }
    ]
  }, */

  {
    path: '/sankeyDiagram',
    name: '各站点进出人数关系',
    meta: {
      title: 'sankeyDiagram'
    },
    component: Main,
    children: [
      {
        path: 'sankeyDiagram',
        name: '各站点进出人数关系',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '各站点进出人数关系'
        },
        component: () => import('@/view/charts/sankeyDiagram')
      }
    ]
  }, {
    path: '/new',
    name: '数据整合信息展示',
    meta: {
      title: '数据整合信息展示'
    },
    component: Main,
    children: [
      {
        path: 'new',
        name: '数据整合信息展示',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '数据整合信息展示'
        },
        component: () => import('@/view/charts/new')
      }
    ]
  }, {
    path: '/simulationData',
    name: '数据分析可视化平台',
    meta: {
      title: '数据分析可视化平台'
    },
    component: Main,
    children: [
      {
        path: 'simulationData',
        name: '数据分析可视化平台',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '数据分析可视化平台'
        },
        component: () => import('@/view/charts/simulationData')
      }
    ]
  }, {
    path: '/prediction',
    name: '数据预测',
    meta: {
      title: '数据预测'
    },
    component: Main,
    children: [
      {
        path: 'prediction',
        name: '数据预测',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: '数据预测'
        },
        component: () => import('@/view/charts/prediction')
      }
    ]
  },

  /*  {
    path: '/moringEveningPassenger',
    name: 'moringEveningPassenger',
    meta: {
      title: 'moringEveningPassenger'
    },
    component: Main,
    children: [
      {
        path: 'moringEveningPassenger',
        name: 'moringEveningPassenger',
        meta: {
          icon: 'md-arrow-dropdown-circle',
          title: 'moringEveningPassenger'
        },
        component: () => import('@/view/charts/moringEveningPassenger')
      }
    ]
  }, */
  {
    path: '/argu',
    name: 'argu',
    meta: {
      hideInMenu: true
    },
    component: Main,
    children: [
      {
        path: 'params/:id',
        name: 'params',
        meta: {
          icon: 'md-flower',
          title: route => `{{ params }}-${route.params.id}`,
          notCache: true,
          beforeCloseName: 'before_close_normal'
        },
        component: () => import('@/view/argu-page/params.vue')
      },
      {
        path: 'query',
        name: 'query',
        meta: {
          icon: 'md-flower',
          title: route => `{{ query }}-${route.query.id}`,
          notCache: true
        },
        component: () => import('@/view/argu-page/query.vue')
      }
    ]
  },
  {
    path: '/401',
    name: 'error_401',
    meta: {
      hideInMenu: true
    },
    component: () => import('@/view/error-page/401.vue')
  },
  {
    path: '/500',
    name: 'error_500',
    meta: {
      hideInMenu: true
    },
    component: () => import('@/view/error-page/500.vue')
  },
  {
    path: '*',
    name: 'error_404',
    meta: {
      hideInMenu: true
    },
    component: () => import('@/view/error-page/404.vue')
  }
]
